import { reqCategoryList, reqGetBannerList, reqGetFloorList } from "../../api"
// 处理action，可以书写自己的业务逻辑，也可以进行异步操作
const actions = {
        async categoryList(context) {
            // 通过API里面的接口函数调用，向服务器发送请求，获取服务器的三级联动数据
            let result = await reqCategoryList();
            if (result.code == 200) {
                result.data.pop()
                context.commit("CATEGORYLIST", result.data)
            }
        },
        async getBannerList(context) {
            // 通过API里面的接口函数调用，向服务器发送请求，获取服务器的轮播图数据（模拟）
            let result = await reqGetBannerList();
            if (result.code == 200) {
                context.commit("GETBANNERLIST", result.data)
            }
        },
        async getFloorList(context) {
            // 通过API里面的接口函数调用，向服务器发送请求，获取服务器的Floor数据（模拟）
            let result = await reqGetFloorList();
            if (result.code == 200) {
                context.commit("GETFLOORLIST", result.data)
            }
        }
    }
    // 修改state的唯一手段
const mutations = {
        CATEGORYLIST(state, categoryList) {
            state.categoryList = categoryList;
        },
        GETBANNERLIST(state, getBannerList) {
            state.getBannerList = getBannerList
        },
        GETFLOORLIST(state, getFloorList) {
            state.getFloorList = getFloorList
        },
    }
    // 存储数据的地方
const state = {
        categoryList: [],
        getBannerList: [],
        getFloorList: [],
    }
    // 理解为计算属性，用于简化仓库数据，让获取仓库数据更加方便
const getters = {}

export default {
    actions,
    mutations,
    state,
    getters
}